1. Field of the Invention
The present invention relates to an image processing apparatus and a control method therefor and, more particularly, to an image processing apparatus which interprets received print data and generates image data and a control method therefor.
2. Description of the Related Art
A laser beam printer as the most popular page printer generally comprises a printer engine unit (the printer engine unit is constituted by a photosensitive drum, a laser light-emitting device, a developing unit, and the like) for actually performing printing, and a printer controller for receiving print data, generating bitmap data, and outputting the bitmap data to the printer engine unit.
The printer controller interprets received print data and generates intermediate data (intermediate code) to quickly develop data into bitmap data. A bitmap image is developed in accordance with the generated intermediate code and output to the printer engine unit.
Along with a steady increase in resolutions of the printer engine units of recent page printers, the print quality is becoming high.
However, as the resolution becomes high, the memory capacity required for developing a bitmap image of one page enormously increases.
Some printers divide image data of one page into a plurality of bands, develop image data in units of bands instead of developing the bitmap image of one page, and output the image data to the printer engine unit. Such a page printer for printing an image in units of bands allows printing with a small memory capacity because it needs no memory for high-resolution data of one page, so the cost can be reduced.
A problem of this printer is that once the printer engine unit starts to operate, the operation cannot be stopped until formation of an image of one page is complete. More specifically, if the time for outputting a certain band to the printer engine unit comes before development of bitmap image data based on intermediate data is complete, no normal print result can be obtained anymore.
Such a situation often occurs not in printing a normal document but in printing a complex image, i.e., an image having a lot of line segments to be drawn.
In print data (data described in a page description language) received from a computer, generally, the described commands are arranged from the upper side to the lower side of a page. However, this does not always apply. Unless print data of one page has been completely received (unless a page feed command or the like is received), printing cannot be started. That is, printing cannot be started until intermediate data for print data of one page is generated. However, when the amount of intermediate data increases (when the image to be printed is complex), the memory area used to develop a band image may not be ensured.